home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1997 #1 / Amiga Plus CD - 1997 - No. 01.iso / pd / sonstiges / amiwin / x11 / man / twm.man < prev    next >
Text File  |  1985-03-23  |  73KB  |  1,915 lines

  1.  
  2.  
  3.  
  4. TWM(1)                   USER COMMANDS                     TWM(1)
  5.  
  6.  
  7.  
  8. NAME
  9.      twm - Tab Window Manager for the X Window System
  10.  
  11. SYNTAX
  12.      twm [ -display dpy ] [ -s ] [ -f initfile ] [ -v ]
  13.  
  14. DESCRIPTION
  15.      Twm is a window manager for the X Window  System.   It  pro-
  16.      vides  titlebars,  shaped  windows,  several  forms  of icon
  17.      management, user-defined macro functions, click-to-type  and
  18.      pointer-driven  keyboard  focus,  and user-specified key and
  19.      pointer button bindings.
  20.  
  21.      This program  is  usually  started  by  the  user's  session
  22.      manager  or  startup  script.   When  used  from  xdm(1)  or
  23.      xinit(1) without a session manager, twm is  frequently  exe-
  24.      cuted  in  the foreground as the last client.  When run this
  25.      way, exiting twm causes the session to be terminated  (i.e.,
  26.      logged out).
  27.  
  28.      By  default,  application  windows  are  surrounded   by   a
  29.      ``frame''  with  a  titlebar at the top and a special border
  30.      around the window.  The titlebar contains the window's name,
  31.      a  rectangle  that  is lit when the window is receiving key-
  32.      board input, and function boxes known as ``titlebuttons'' at
  33.      the left and right edges of the titlebar.
  34.  
  35.      Pressing  pointer  Button1  (usually  the  left-most  button
  36.      unless  it  has  been changed with xmodmap) on a titlebutton
  37.      will invoke the function associated with the button.  In the
  38.      default interface, windows are iconified by clicking (press-
  39.      ing and then immediately  releasing)  the  left  titlebutton
  40.      (which  looks like a Dot).  Conversely, windows are deiconi-
  41.      fied by clicking in the associated icon or entry in the icon
  42.      manager (see description of the variable ShowIconManager and
  43.      of the function f.showiconmgr).
  44.  
  45.      Windows are resized by pressing the right titlebutton (which
  46.      resembles  a  group of nested squares), dragging the pointer
  47.      over edge that is to be moved,  and  releasing  the  pointer
  48.      when  the  outline of the window is the desired size.  Simi-
  49.      larly, windows  are  moved  by  pressing  in  the  title  or
  50.      highlight region, dragging a window outline to the new loca-
  51.      tion, and then releasing when the outline is in the  desired
  52.      position.   Just  clicking  in the title or highlight region
  53.      raises the window without moving it.
  54.  
  55.      When new windows are created, twm will honor  any  size  and
  56.      location  information requested by the user (usually through
  57.      -geometry command line argument or resources for the indivi-
  58.      dual  applications).  Otherwise,  an outline of the window's
  59.      default size, its titlebar, and lines  dividing  the  window
  60.  
  61.  
  62.  
  63. X Version 11         Last change: Release 6                     1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. TWM(1)                   USER COMMANDS                     TWM(1)
  71.  
  72.  
  73.  
  74.      into  a  3x3  grid  that  track  the  pointer are displayed.
  75.      Clicking pointer Button1 will position  the  window  at  the
  76.      current  position  and  give  it the default size.  Pressing
  77.      pointer Button2 (usually  the  middle  pointer  button)  and
  78.      dragging  the outline will give the window its current posi-
  79.      tion but allow the sides to be resized as  described  above.
  80.      Clicking  pointer Button3 (usually the right pointer button)
  81.      will give the window its current  position  but  attempt  to
  82.      make it long enough to touch the bottom the screen.
  83.  
  84. OPTIONS
  85.      Twm accepts the following command line options:
  86.  
  87.      -display dpy
  88.              This option specifies the X server to use.
  89.  
  90.      -s      This option indicates that only the  default  screen
  91.              (as specified by -display or by the DISPLAY environ-
  92.              ment variable) should be managed.  By  default,  twm
  93.              will attempt to manage all screens on the display.
  94.  
  95.      -f filename
  96.              This option specifies the name of the  startup  file
  97.              to  use.   By  default,  twm will look in the user's
  98.              home directory for files named .twmrc.num (where num
  99.              is a screen number) or .twmrc.
  100.  
  101.      -v      This option indicates that twm  should  print  error
  102.              messages  whenever  an  unexpected  X Error event is
  103.              received.  This can be useful when debugging  appli-
  104.              cations but can be distracting in regular use.
  105.  
  106. CUSTOMIZATION
  107.      Much of twm's appearance and behavior can be  controlled  by
  108.      providing  a  startup file in one of the following locations
  109.      (searched in order for each screen being  managed  when  twm
  110.      begins):
  111.  
  112.      $HOME/.twmrc.screennumber
  113.              The screennumber is a small positive number (e.g. 0,
  114.              1,  etc.)  representing  the screen number (e.g. the
  115.              last number  in  the  DISPLAY  environment  variable
  116.              host:displaynum.screennum)  that  would  be  used to
  117.              contact  that  screen  of  the  display.   This   is
  118.              intended  for  displays  with  multiple  screens  of
  119.              differing visual types.
  120.  
  121.      $HOME/.twmrc
  122.              This is the usual  name  for  an  individual  user's
  123.              startup file.
  124.  
  125.      <XRoot>/lib/X11/twm/system.twmrc
  126.  
  127.  
  128.  
  129. X Version 11         Last change: Release 6                     2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. TWM(1)                   USER COMMANDS                     TWM(1)
  137.  
  138.  
  139.  
  140.              If neither of the preceding  files  are  found,  twm
  141.              will  look in this file for a default configuration.
  142.              This is often tailored by the site administrator  to
  143.              provide  convenient  menus  or familiar bindings for
  144.              novice users.  <XRoot> refers to the root of the X11
  145.              install tree.
  146.  
  147.      If no startup files are found, twm  will  use  the  built-in
  148.      defaults  described above.  The only resource used by twm is
  149.      bitmapFilePath for a colon-separated list of directories  to
  150.      search  when looking for bitmap files (for more information,
  151.      see the Athena Widgets manual and xrdb(1)).
  152.  
  153.      Twm startup files are logically broken up into  three  types
  154.      of  specifications:   Variables, Bindings, Menus.  The Vari-
  155.      ables section must come first and is used  to  describe  the
  156.      fonts,  colors,  cursors,  border  widths,  icon  and window
  157.      placement,  highlighting,  autoraising,  layout  of  titles,
  158.      warping, use of the icon manager.  The Bindings section usu-
  159.      ally comes second and is used to specify the functions  that
  160.      should  be  to  be invoked when keyboard and pointer buttons
  161.      are pressed in windows,  icons,  titles,  and  frames.   The
  162.      Menus section gives any user-defined menus (containing func-
  163.      tions to be invoked or commands to be executed).
  164.  
  165.      Variable names and keywords are  case-insensitive.   Strings
  166.      must  be surrounded by double quote characters (e.g. "blue")
  167.      and are case-sensitive.  A  pound  sign  (#)  outside  of  a
  168.      string causes the remainder of the line in which the charac-
  169.      ter appears to be treated as a comment.
  170.  
  171. VARIABLES
  172.      Many of the aspects of twm's user interface  are  controlled
  173.      by  variables  that  may  be set in the user's startup file.
  174.      Some of the options are enabled or disabled  simply  by  the
  175.      presence  of  a  particular  keyword.  Other options require
  176.      keywords, numbers, strings, or lists of all of these.
  177.  
  178.      Lists are surrounded by braces and are usually separated  by
  179.      whitespace or a newline.  For example:
  180.  
  181.           AutoRaise { "emacs" "XTerm" "Xmh" }
  182.  
  183.      or
  184.  
  185.           AutoRaise
  186.           {
  187.                "emacs"
  188.                "XTerm"
  189.                "Xmh"
  190.           }
  191.  
  192.  
  193.  
  194.  
  195. X Version 11         Last change: Release 6                     3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. TWM(1)                   USER COMMANDS                     TWM(1)
  203.  
  204.  
  205.  
  206.      When a variable containing a list  of  strings  representing
  207.      windows  is  searched  (e.g.  to determine whether or not to
  208.      enable autoraise as shown above), a string must be an exact,
  209.      case-sensitive  match  to  the  window's  name (given by the
  210.      WM_NAME window property), resource name or class name  (both
  211.      given by the WM_CLASS window property).  The preceding exam-
  212.      ple would enable autoraise on  windows  named  ``emacs''  as
  213.      well as any xterm (since they are of class ``XTerm'') or xmh
  214.      windows (which are of class ``Xmh'').
  215.  
  216.      String arguments that are interpreted as filenames (see  the
  217.      Pixmaps,  Cursors, and IconDirectory below) will prepend the
  218.      user's directory (specified by the  HOME  environment  vari-
  219.      able)  if  the first character is a tilde (~).  If, instead,
  220.      the first character is a colon (:), the name is  assumed  to
  221.      refer to one of the internal bitmaps that are used to create
  222.      the default titlebars  symbols:   :xlogo  or  :delete  (both
  223.      refer  to  the  X logo), :dot or :iconify (both refer to the
  224.      dot), :resize (the nested squares used by  the  resize  but-
  225.      ton), :menu (a page with lines), and :question (the question
  226.      mark used for non-existent bitmap files).
  227.  
  228.      The following variables may be specified at the top of a twm
  229.      startup file.  Lists of Window name prefix strings are indi-
  230.      cated by win-list.  Optional arguments are shown  in  square
  231.      brackets:
  232.  
  233.      AutoRaise { win-list }
  234.              This variable  specifies  a  list  of  windows  that
  235.              should  automatically be raised whenever the pointer
  236.              enters the window.  This action can be interactively
  237.              enabled  or disabled on individual windows using the
  238.              function f.autoraise.
  239.  
  240.      AutoRelativeResize
  241.              This variable indicates that dragging out  a  window
  242.              size  (either  when initially sizing the window with
  243.              pointer Button2 or when resizing it) should not wait
  244.              until  the  pointer  has  crossed  the window edges.
  245.              Instead, moving the pointer automatically causes the
  246.              nearest  edge  or  edges to move by the same amount.
  247.              This allows the resizing of windows that extend  off
  248.              the  edge  of  the screen.  If the pointer is in the
  249.              center of the window, or if the resize is  begun  by
  250.              pressing  a titlebutton, twm will still wait for the
  251.              pointer  to  cross  a  window   edge   (to   prevent
  252.              accidents).   This option is particularly useful for
  253.              people who like  the  press-drag-release  method  of
  254.              sweeping out window sizes.
  255.  
  256.      BorderColor string [{ wincolorlist }]
  257.              This variable specifies the  default  color  of  the
  258.  
  259.  
  260.  
  261. X Version 11         Last change: Release 6                     4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. TWM(1)                   USER COMMANDS                     TWM(1)
  269.  
  270.  
  271.  
  272.              border  to  be  placed around all non-iconified win-
  273.              dows, and may only be given within a  Color,  Grays-
  274.              cale  or Monochrome list.  The optional wincolorlist
  275.              specifies a list of window and color name pairs  for
  276.              specifying  particular  border  colors for different
  277.              types of windows.  For example:
  278.  
  279.                   BorderColor "gray50"
  280.                   {
  281.                        "XTerm"   "red"
  282.                        "xmh"     "green"
  283.                   }
  284.  
  285.              The default is "black".
  286.  
  287.      BorderTileBackground string [{ wincolorlist }]
  288.              This variable specifies the default background color
  289.              in  the  gray  pattern used in unhighlighted borders
  290.              (only if NoHighlight hasn't been set), and may  only
  291.              be  given  within  a  Color, Grayscale or Monochrome
  292.              list.  The optional wincolorlist  allows  per-window
  293.              colors to be specified.  The default  is "white".
  294.  
  295.      BorderTileForeground string [{ wincolorlist }]
  296.              This variable specifies the default foreground color
  297.              in  the  gray  pattern used in unhighlighted borders
  298.              (only if NoHighlight hasn't been set), and may  only
  299.              be  given  within  a  Color, Grayscale or Monochrome
  300.              list.  The optional wincolorlist  allows  per-window
  301.              colors to be specified.  The default is "black".
  302.  
  303.      BorderWidth pixels
  304.              This variable specifies the width in pixels  of  the
  305.              border  surrounding  all  client  window  frames  if
  306.              ClientBorderWidth  has  not  been  specified.   This
  307.              value is also used to set the border size of windows
  308.              created by twm (such  as  the  icon  manager).   The
  309.              default is 2.
  310.  
  311.      ButtonIndent pixels
  312.              This  variable  specifies  the   amount   by   which
  313.              titlebuttons should be indented on all sides.  Posi-
  314.              tive values cause the buttons to be smaller than the
  315.              window  text  and  highlight area so that they stand
  316.              out.  Setting this  and  the  TitleButtonBorderWidth
  317.              variables  to  0  makes  titlebuttons be as tall and
  318.              wide as possible.  The default is 1.
  319.  
  320.      ClientBorderWidth
  321.              This variable  indicates  that  border  width  of  a
  322.              window's  frame  should be set to the initial border
  323.              width of the window, rather than  to  the  value  of
  324.  
  325.  
  326.  
  327. X Version 11         Last change: Release 6                     5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. TWM(1)                   USER COMMANDS                     TWM(1)
  335.  
  336.  
  337.  
  338.              BorderWidth.
  339.  
  340.      Color { colors-list }
  341.              This variable specifies a list of color  assignments
  342.              to  be  made  if  the  default display is capable of
  343.              displaying more than simple black  and  white.   The
  344.              colors-list  is made up of the following color vari-
  345.              ables and their values: DefaultBackground,  Default-
  346.              Foreground,  MenuBackground,  MenuForeground,  Menu-
  347.              TitleBackground,    MenuTitleForeground,    MenuSha-
  348.              dowColor,  PointerForeground, and PointerBackground.
  349.              The following color variables may also  be  given  a
  350.              list  of  window  and color name pairs to allow per-
  351.              window colors to be specified (see  BorderColor  for
  352.              details): BorderColor, IconManagerHighlight, Border-
  353.              TitleBackground,  BorderTitleForeground,  TitleBack-
  354.              ground,  TitleForeground,  IconBackground, IconFore-
  355.              ground, IconBorderColor, IconManagerBackground,  and
  356.              IconManagerForeground.  For example:
  357.  
  358.                   Color
  359.                   {
  360.                        MenuBackground      "gray50"
  361.                        MenuForeground      "blue"
  362.                        BorderColor              "red" { "XTerm" "yellow" }
  363.                        TitleForeground          "yellow"
  364.                        TitleBackground          "blue"
  365.                   }
  366.  
  367.              All of these color variables may also  be  specified
  368.              for  the Monochrome variable, allowing the same ini-
  369.              tialization file to be used on both color and  mono-
  370.              chrome displays.
  371.  
  372.      ConstrainedMoveTime milliseconds
  373.              This variable specifies the length of  time  between
  374.              button  clicks  needed  to  begin a constrained move
  375.              operation.  Double clicking within  this  amount  of
  376.              time  when  invoking f.move will cause the window to
  377.              be moved only in a horizontal or vertical direction.
  378.              Setting  this  value  to  0 will disable constrained
  379.              moves.  The default is 400 milliseconds.
  380.  
  381.      Cursors { cursor-list }
  382.              This variable specifies the glyphs that  twm  should
  383.              use for various pointer cursors.  Each cursor may be
  384.              defined either from the cursor font or from two bit-
  385.              map  files.   Shapes  from  the  cursor  font may be
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393. X Version 11         Last change: Release 6                     6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. TWM(1)                   USER COMMANDS                     TWM(1)
  401.  
  402.  
  403.  
  404.              specified directly as:
  405.  
  406.                        cursorname     "string"
  407.  
  408.              where cursorname is one of the cursor  names  listed
  409.              below, and string is the name of a glyph as found in
  410.              the file  <XRoot>/include/X11/cursorfont.h  (without
  411.              the ``XC_'' prefix).  If the cursor is to be defined
  412.              from bitmap files,  the  following  syntax  is  used
  413.              instead:
  414.  
  415.                        cursorname     "image"   "mask"
  416.  
  417.              The image and mask  strings  specify  the  names  of
  418.              files  containing  the  glyph image and mask in bit-
  419.              map(1) form.  The bitmap files are  located  in  the
  420.              same  manner  as  icon  bitmap files.  The following
  421.              example shows the default cursor definitions:
  422.  
  423.                   Cursors
  424.                   {
  425.                        Frame          "top_left_arrow"
  426.                        Title          "top_left_arrow"
  427.                        Icon      "top_left_arrow"
  428.                        IconMgr   "top_left_arrow"
  429.                        Move      "fleur"
  430.                        Resize         "fleur"
  431.                        Menu      "sb_left_arrow"
  432.                        Button         "hand2"
  433.                        Wait      "watch"
  434.                        Select         "dot"
  435.                        Destroy   "pirate"
  436.                   }
  437.  
  438.  
  439.      DecorateTransients
  440.              This  variable  indicates  that  transient   windows
  441.              (those   containing   a  WM_TRANSIENT_FOR  property)
  442.              should have titlebars.  By default,  transients  are
  443.              not reparented.
  444.  
  445.      DefaultBackground string
  446.              This variable specifies the background color  to  be
  447.              used   for  sizing  and  information  windows.   The
  448.              default is "white".
  449.  
  450.      DefaultForeground string
  451.              This variable specifies the foreground color  to  be
  452.              used   for  sizing  and  information  windows.   The
  453.              default is "black".
  454.  
  455.      DontIconifyByUnmapping { win-list }
  456.  
  457.  
  458.  
  459. X Version 11         Last change: Release 6                     7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. TWM(1)                   USER COMMANDS                     TWM(1)
  467.  
  468.  
  469.  
  470.              This variable  specifies  a  list  of  windows  that
  471.              should not be iconified by simply unmapping the win-
  472.              dow (as would be the case if IconifyByUnmapping  had
  473.              been  set).   This  is frequently used to force some
  474.              windows to be treated as icons while  other  windows
  475.              are handled by the icon manager.
  476.  
  477.      DontMoveOff
  478.              This variable indicates that windows should  not  be
  479.              allowed to be moved off the screen.  It can be over-
  480.              ridden by the f.forcemove function.
  481.  
  482.      DontSqueezeTitle [{ win-list }]
  483.              This variable indicates that titlebars should not be
  484.              squeezed  to  their  minimum size as described under
  485.              SqueezeTitle below.  If the optional window list  is
  486.              supplied,  only those windows will be prevented from
  487.              being squeezed.
  488.  
  489.      ForceIcons
  490.              This variable indicates that icon pixmaps  specified
  491.              in  the  Icons  variable should override any client-
  492.              supplied pixmaps.
  493.  
  494.      FramePadding pixels
  495.              This variable specifies  the  distance  between  the
  496.              titlebar  decorations  (the button and text) and the
  497.              window frame.  The default is 2 pixels.
  498.  
  499.      Grayscale { colors }
  500.              This variable specifies a list of color  assignments
  501.              that  should  be  made if the screen has a GrayScale
  502.              default visual.  See the description of Colors.
  503.  
  504.      IconBackground string [{ win-list }]
  505.              This variable  specifies  the  background  color  of
  506.              icons,  and may only be specified inside of a Color,
  507.              Grayscale or Monochrome list.  The optional win-list
  508.              is  a  list  of window names and colors so that per-
  509.              window colors may be specified.  See the BorderColor
  510.              variable for a complete description of the win-list.
  511.              The default is "white".
  512.  
  513.      IconBorderColor string [{ win-list }]
  514.              This variable specifies the color of the border used
  515.              for  icon  windows, and may only be specified inside
  516.              of a  Color,  Grayscale  or  Monochrome  list.   The
  517.              optional  win-list  is  a  list  of window names and
  518.              colors so that per-window colors may  be  specified.
  519.              See the BorderColor variable for a complete descrip-
  520.              tion of the win-list. The default is "black".
  521.  
  522.  
  523.  
  524.  
  525. X Version 11         Last change: Release 6                     8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. TWM(1)                   USER COMMANDS                     TWM(1)
  533.  
  534.  
  535.  
  536.      IconBorderWidth pixels
  537.              This variable specifies the width in pixels  of  the
  538.              border surrounding icon windows.  The default is 2.
  539.  
  540.      IconDirectory string
  541.              This variable specifies the directory that should be
  542.              searched  if if a bitmap file cannot be found in any
  543.              of the directories in the bitmapFilePath resource.
  544.  
  545.      IconFont string
  546.              This variable specifies  the  font  to  be  used  to
  547.              display  icon  names  within  icons.  The default is
  548.              "variable".
  549.  
  550.      IconForeground string [{ win-list }]
  551.              This variable specifies the foreground color  to  be
  552.              used  when  displaying icons, and may only be speci-
  553.              fied inside of  a  Color,  Grayscale  or  Monochrome
  554.              list.   The  optional  win-list  is a list of window
  555.              names and colors so that per-window  colors  may  be
  556.              specified.   See the BorderColor variable for a com-
  557.              plete description of the win-list.  The  default  is
  558.              "black".
  559.  
  560.      IconifyByUnmapping [{ win-list }]
  561.              This variable indicates that windows should be icon-
  562.              ified  by  being  unmapped without trying to map any
  563.              icons.  This assumes that the user  will  remap  the
  564.              window  through the icon manager, the f.warpto func-
  565.              tion, or the TwmWindows menu.  If the optional  win-
  566.              list  is provided, only those windows will be iconi-
  567.              fied by simply unmapping.  Windows  that  have  both
  568.              this and the IconManagerDontShow options set may not
  569.              be accessible if no binding to the  TwmWindows  menu
  570.              is set in the user's startup file.
  571.  
  572.      IconManagerBackground string [{ win-list }]
  573.              This variable specifies the background color to  use
  574.              for  icon manager entries, and may only be specified
  575.              inside of a Color,  Grayscale  or  Monochrome  list.
  576.              The  optional win-list is a list of window names and
  577.              colors so that per-window colors may  be  specified.
  578.              See the BorderColor variable for a complete descrip-
  579.              tion of the win-list.  The default is "white".
  580.  
  581.      IconManagerDontShow [{ win-list }]
  582.              This variable indicates that the icon manager should
  583.              not  display  any windows.  If the optional win-list
  584.              is given, only those windows will not be  displayed.
  585.              This  variable  is  used to prevent windows that are
  586.              rarely iconified (such as xclock or xload) from tak-
  587.              ing up space in the icon manager.
  588.  
  589.  
  590.  
  591. X Version 11         Last change: Release 6                     9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. TWM(1)                   USER COMMANDS                     TWM(1)
  599.  
  600.  
  601.  
  602.      IconManagerFont string
  603.              This variable specifies the font  to  be  used  when
  604.              displaying  icon  manager  entries.   The default is
  605.              "variable".
  606.  
  607.      IconManagerForeground string [{ win-list }]
  608.              This variable specifies the foreground color  to  be
  609.              used  when  displaying icon manager entries, and may
  610.              only be specified inside of a  Color,  Grayscale  or
  611.              Monochrome list.  The optional win-list is a list of
  612.              window names and colors so  that  per-window  colors
  613.              may  be specified.  See the BorderColor variable for
  614.              a complete description of the win-list.  The default
  615.              is "black".
  616.  
  617.      IconManagerGeometry string [ columns ]
  618.              This variable specifies the  geometry  of  the  icon
  619.              manager  window.   The  string  argument is standard
  620.              geometry specification that  indicates  the  initial
  621.              full  size  of  the  icon manager.  The icon manager
  622.              window is then broken into columns pieces and scaled
  623.              according  to  the  number  of  entries  in the icon
  624.              manager.  Extra entries are wrapped  to  form  addi-
  625.              tional rows.  The default number of columns is 1.
  626.  
  627.      IconManagerHighlight string [{ win-list }]
  628.              This variable specifies the border color to be  used
  629.              when   highlighting  the  icon  manager  entry  that
  630.              currently has the focus, and can only  be  specified
  631.              inside  of  a  Color,  Grayscale or Monochrome list.
  632.              The optional win-list is a list of window names  and
  633.              colors  so  that per-window colors may be specified.
  634.              See the BorderColor variable for a complete descrip-
  635.              tion of the win-list.  The default is "black".
  636.  
  637.      IconManagers { iconmgr-list }
  638.              This variable specifies a list of icon  managers  to
  639.              create.   Each item in the iconmgr-list has the fol-
  640.              lowing format:
  641.  
  642.                        "winname" ["iconname"]   "geometry" columns
  643.  
  644.              where winname is the name of the windows that should
  645.              be  put into this icon manager, iconname is the name
  646.              of that icon manager window's icon,  geometry  is  a
  647.              standard  geometry specification, and columns is the
  648.              number of columns in this icon manager as  described
  649.              in IconManagerGeometry.  For example:
  650.  
  651.                   IconManagers
  652.                   {
  653.                        "XTerm"   "=300x5+800+5" 5
  654.  
  655.  
  656.  
  657. X Version 11         Last change: Release 6                    10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. TWM(1)                   USER COMMANDS                     TWM(1)
  665.  
  666.  
  667.  
  668.                        "myhost"  "=400x5+100+5" 2
  669.                   }
  670.  
  671.              Clients whose name or class is ``XTerm''  will  have
  672.              an  entry  created  in  the  ``XTerm'' icon manager.
  673.              Clients whose name was ``myhost'' would be put  into
  674.              the ``myhost'' icon manager.
  675.  
  676.      IconManagerShow { win-list }
  677.              This variable  specifies  a  list  of  windows  that
  678.              should  appear  in  the  icon manager.  When used in
  679.              conjunction with the  IconManagerDontShow  variable,
  680.              only  the  windows in this list will be shown in the
  681.              icon manager.
  682.  
  683.      IconRegion geomstring vgrav hgrav gridwidth gridheight
  684.              This variable specifies an area on the  root  window
  685.              in  which icons are placed if no specific icon loca-
  686.              tion is provided by the client.  The geomstring is a
  687.              quoted string containing a standard geometry specif-
  688.              ication.  If more  than  one  IconRegion  lines  are
  689.              given,  icons  will  be put into the succeeding icon
  690.              regions when the first is full.  The vgrav  argument
  691.              should  be  either North or South and control and is
  692.              used to control whether icons are  first  filled  in
  693.              from  the  top  or bottom of the icon region.  Simi-
  694.              larly, the hgrav argument should be either  East  or
  695.              West  and is used to control whether icons should be
  696.              filled in from left from the right.  Icons are  laid
  697.              out within the region in a grid with cells gridwidth
  698.              pixels wide and gridheight pixels high.
  699.  
  700.      Icons { win-list }
  701.              This variable specifies a list of window  names  and
  702.              the  bitmap  filenames  that should be used as their
  703.              icons.  For example:
  704.  
  705.                   Icons
  706.                   {
  707.                        "XTerm"   "xterm.icon"
  708.                        "xfd"          "xfd_icon"
  709.                   }
  710.  
  711.              Windows that match ``XTerm'' and would not be iconi-
  712.              fied  by  unmapping,  and  would try to use the icon
  713.              bitmap in the file ``xterm.icon''.  If ForceIcons is
  714.              specified,  this  bitmap  will  be  used even if the
  715.              client has requested its own icon pixmap.
  716.  
  717.      InterpolateMenuColors
  718.              This  variable  indicates  that  menu  entry  colors
  719.              should   be  interpolated  between  entry  specified
  720.  
  721.  
  722.  
  723. X Version 11         Last change: Release 6                    11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. TWM(1)                   USER COMMANDS                     TWM(1)
  731.  
  732.  
  733.  
  734.              colors.  In the example below:
  735.  
  736.                   Menu "mymenu"
  737.                   {
  738.                        "Title"        ("black":"red")          f.title
  739.                        "entry1"                 f.nop
  740.                        "entry2"                 f.nop
  741.                        "entry3"  ("white":"green")   f.nop
  742.                        "entry4"                 f.nop
  743.                        "entry5"  ("red":"white")          f.nop
  744.                   }
  745.  
  746.              the foreground colors for ``entry1'' and  ``entry2''
  747.              will  be  interpolated  between black and white, and
  748.              the background colors between red and green.   Simi-
  749.              larly,  the  foreground for ``entry4'' will be half-
  750.              way between white and red, and the  background  will
  751.              be half-way between green and white.
  752.  
  753.      MakeTitle { win-list }
  754.              This variable specifies a list of windows on which a
  755.              titlebar  should  be  placed  and is used to request
  756.              titles on specific windows  when  NoTitle  has  been
  757.              set.
  758.  
  759.      MaxWindowSize string
  760.              This variable specifies  a  geometry  in  which  the
  761.              width  and  height give the maximum size for a given
  762.              window.  This is typically used to restrict  windows
  763.              to  the  size  of  the screen.  The default width is
  764.              32767 - screen width.  The default height is 32767 -
  765.              screen height.
  766.  
  767.      MenuBackground string
  768.              This variable specifies the  background  color  used
  769.              for  menus,  and  can  only be specified inside of a
  770.              Color or Monochrome list.  The default is "white".
  771.  
  772.      MenuFont string
  773.              This  variable  specifies  the  font  to  use   when
  774.              displaying menus.  The default is "variable".
  775.  
  776.      MenuForeground string
  777.              This variable specifies the  foreground  color  used
  778.              for  menus,  and  can  only be specified inside of a
  779.              Color, Grayscale or Monochrome list.  The default is
  780.              "black".
  781.  
  782.      MenuShadowColor string
  783.              This variable specifies  the  color  of  the  shadow
  784.              behind  pull-down  menus  and  can only be specified
  785.              inside of a Color,  Grayscale  or  Monochrome  list.
  786.  
  787.  
  788.  
  789. X Version 11         Last change: Release 6                    12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. TWM(1)                   USER COMMANDS                     TWM(1)
  797.  
  798.  
  799.  
  800.              The default is "black".
  801.  
  802.      MenuTitleBackground string
  803.              This variable specifies  the  background  color  for
  804.              f.title  entries in menus, and can only be specified
  805.              inside of a Color,  Grayscale  or  Monochrome  list.
  806.              The default is "white".
  807.  
  808.      MenuTitleForeground string
  809.              This variable specifies  the  foreground  color  for
  810.              f.title  entries  in menus and can only be specified
  811.              inside of a Color or Monochrome list.   The  default
  812.              is "black".
  813.  
  814.      Monochrome { colors }
  815.              This variable specifies a list of color  assignments
  816.              that  should be made if the screen has a depth of 1.
  817.              See the description of Colors.
  818.  
  819.      MoveDelta pixels
  820.              This variable specifies the  number  of  pixels  the
  821.              pointer  must move before the f.move function starts
  822.              working.  Also see the  f.deltastop  function.   The
  823.              default is zero pixels.
  824.  
  825.      NoBackingStore
  826.              This variable indicates that twm's menus should  not
  827.              request  backing  store  to  minimize  repainting of
  828.              menus.  This is typically used with servers that can
  829.              repaint faster than they can handle backing store.
  830.  
  831.      NoCaseSensitive
  832.              This variable indicates that case should be  ignored
  833.              when  sorting  icon  names in an icon manager.  This
  834.              option is typically used with applications that cap-
  835.              italize the first letter of their icon name.
  836.  
  837.      NoDefaults
  838.              This variable indicates that twm should  not  supply
  839.              the  default titlebuttons and bindings.  This option
  840.              should only be used if the startup file  contains  a
  841.              completely new set of bindings and definitions.
  842.  
  843.      NoGrabServer
  844.              This variable indicates that twm should not grab the
  845.              server  when popping up menus and moving opaque win-
  846.              dows.
  847.  
  848.      NoHighlight [{ win-list }]
  849.              This variable indicates that borders should  not  be
  850.              highlighted  to  track  the location of the pointer.
  851.              If the optional win-list is given, highlighting will
  852.  
  853.  
  854.  
  855. X Version 11         Last change: Release 6                    13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. TWM(1)                   USER COMMANDS                     TWM(1)
  863.  
  864.  
  865.  
  866.              only be disabled for those windows.  When the border
  867.              is highlighted, it will be drawn in the current Bor-
  868.              derColor.   When  the  border is not highlighted, it
  869.              will be stippled  with  a  gray  pattern  using  the
  870.              current   BorderTileForeground  and  BorderTileBack-
  871.              ground colors.
  872.  
  873.      NoIconManagers
  874.              This variable indicates that no icon manager  should
  875.              be created.
  876.  
  877.      NoMenuShadows
  878.              This variable indicates that menus should  not  have
  879.              drop  shadows  drawn behind them.  This is typically
  880.              used with slower servers since  it  speeds  up  menu
  881.              drawing  at  the expense of making the menu slightly
  882.              harder to read.
  883.  
  884.      NoRaiseOnDeiconify
  885.              This  variable  indicates  that  windows  that   are
  886.              deiconified should not be raised.
  887.  
  888.      NoRaiseOnMove
  889.              This variable indicates that windows should  not  be
  890.              raised  when moved.  This is typically used to allow
  891.              windows to slide underneath each other.
  892.  
  893.      NoRaiseOnResize
  894.              This variable indicates that windows should  not  be
  895.              raised  when  resized.   This  is  typically used to
  896.              allow windows to be resized underneath each other.
  897.  
  898.      NoRaiseOnWarp
  899.              This variable indicates that windows should  not  be
  900.              raised when the pointer is warped into them with the
  901.              f.warpto function.  If this option is  set,  warping
  902.              to an occluded window may result in the pointer end-
  903.              ing up in the occluding window instead  the  desired
  904.              window   (which   causes  unexpected  behavior  with
  905.              f.warpring).
  906.  
  907.      NoSaveUnders
  908.              This  variable  indicates  that  menus  should   not
  909.              request  save-unders  to  minimize window repainting
  910.              following menu selection.  It is typically used with
  911.              displays  that can repaint faster than they can han-
  912.              dle save-unders.
  913.  
  914.      NoStackMode [{ win-list }]
  915.              This variable indicates that client window  requests
  916.              to  change stacking order should be ignored.  If the
  917.              optional win-list is given, only requests  on  those
  918.  
  919.  
  920.  
  921. X Version 11         Last change: Release 6                    14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. TWM(1)                   USER COMMANDS                     TWM(1)
  929.  
  930.  
  931.  
  932.              windows  will be ignored.  This is typically used to
  933.              prevent applications from relentlessly popping them-
  934.              selves to the front of the window stack.
  935.  
  936.      NoTitle [{ win-list }]
  937.              This variable indicates that windows should not have
  938.              titlebars.   If the optional win-list is given, only
  939.              those windows will not  have  titlebars.   MakeTitle
  940.              may  be  used with this option to force titlebars to
  941.              be put on specific windows.
  942.  
  943.      NoTitleFocus
  944.              This variable indicates that twm should not set key-
  945.              board  input  focus to each window as it is entered.
  946.              Normally, twm sets the focus so that focus  and  key
  947.              events  from  the  titlebar  and  icon  managers are
  948.              delivered to the application.   If  the  pointer  is
  949.              moved  quickly and twm is slow to respond, input can
  950.              be directed to the old window instead  of  the  new.
  951.              This  option  is  typically  used  to  prevent  this
  952.              ``input lag'' and  to  work  around  bugs  in  older
  953.              applications that have problems with focus events.
  954.  
  955.      NoTitleHighlight [{ win-list }]
  956.              This variable indicates that the highlight  area  of
  957.              the  titlebar,  which is used to indicate the window
  958.              that currently has the input focus,  should  not  be
  959.              displayed.   If the optional win-list is given, only
  960.              those windows will not have highlight  areas.   This
  961.              and  the SqueezeTitle options can be set to substan-
  962.              tially reduce the amount of screen space required by
  963.              titlebars.
  964.  
  965.      OpaqueMove
  966.              This variable indicates  that  the  f.move  function
  967.              should  actually  move the window instead of just an
  968.              outline so that the user can  immediately  see  what
  969.              the window will look like in the new position.  This
  970.              option is typically used on fast displays  (particu-
  971.              larly if NoGrabServer is set).
  972.  
  973.      Pixmaps { pixmaps }
  974.              This variable  specifies  a  list  of  pixmaps  that
  975.              define the appearance of various images.  Each entry
  976.              is a keyword indicating the pixmap to set,  followed
  977.              by a string giving the name of the bitmap file.  The
  978.              following pixmaps may be specified:
  979.  
  980.                   Pixmaps
  981.                   {
  982.                        TitleHighlight "gray1"
  983.                   }
  984.  
  985.  
  986.  
  987. X Version 11         Last change: Release 6                    15
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. TWM(1)                   USER COMMANDS                     TWM(1)
  995.  
  996.  
  997.  
  998.              The default for TitleHighlight is  to  use  an  even
  999.              stipple pattern.
  1000.  
  1001.      Priority priority
  1002.              This variable sets twm's priority.  priority  should
  1003.              be  an  unquoted,  signed  number  (e.g. 999).  This
  1004.              variable has an effect only if the  server  supports
  1005.              the SYNC extension.
  1006.  
  1007.      RandomPlacement
  1008.              This variable indicates that windows with no  speci-
  1009.              fied  geometry  should  be placed in a pseudo-random
  1010.              location instead of having the user drag out an out-
  1011.              line.
  1012.  
  1013.      ResizeFont string
  1014.              This variable specifies the font to be used  for  in
  1015.              the  dimensions  window  when resizing windows.  The
  1016.              default is "fixed".
  1017.  
  1018.      RestartPreviousState
  1019.              This variable indicates that twm should  attempt  to
  1020.              use  the WM_STATE property on client windows to tell
  1021.              which windows should be iconified and  which  should
  1022.              be  left  visible.  This is typically used to try to
  1023.              regenerate the state that the screen was  in  before
  1024.              the previous window manager was shutdown.
  1025.  
  1026.      SaveColor { colors-list }
  1027.              This variable indicates a list of color  assignments
  1028.              to be stored as pixel values in the root window pro-
  1029.              perty _MIT_PRIORITY_COLORS.  Clients  may  elect  to
  1030.              preserve  these  values  when  installing  their own
  1031.              colormap.  Note that use of this mechanism is a  way
  1032.              an  for application to avoid the "technicolor" prob-
  1033.              lem, whereby useful screen objects  such  as  window
  1034.              borders and titlebars disappear when a programs cus-
  1035.              tom colors are installed by the window manager.  For
  1036.              example:
  1037.  
  1038.                   SaveColor
  1039.                   {
  1040.                           BorderColor
  1041.                           TitleBackground
  1042.                           TitleForeground
  1043.                           "red"
  1044.                           "green"
  1045.                           "blue"
  1046.                   }
  1047.  
  1048.              This would place on the root window 3  pixel  values
  1049.              for  borders  and  titlebars,  as  well as the three
  1050.  
  1051.  
  1052.  
  1053. X Version 11         Last change: Release 6                    16
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. TWM(1)                   USER COMMANDS                     TWM(1)
  1061.  
  1062.  
  1063.  
  1064.              color strings, all taken from the default colormap.
  1065.  
  1066.      ShowIconManager
  1067.              This variable indicates that the icon manager window
  1068.              should  be  displayed  when  twm is started.  It can
  1069.              always be brought up using the  f.showiconmgr  func-
  1070.              tion.
  1071.  
  1072.      SortIconManager
  1073.              This variable indicates that  entries  in  the  icon
  1074.              manager  should be sorted alphabetically rather than
  1075.              by simply appending new windows to the end.
  1076.  
  1077.      SqueezeTitle [{ squeeze-list }]
  1078.              This variable indicates that twm should  attempt  to
  1079.              use  the  SHAPE  extension  to make titlebars occupy
  1080.              only as much screen space as they need, rather  than
  1081.              extending  all the way across the top of the window.
  1082.              The optional squeeze-list may be used to control the
  1083.              location  of  the squeezed titlebar along the top of
  1084.              the window.  It contains entries of the form:
  1085.  
  1086.                        "name"         justification  num  denom
  1087.  
  1088.              where name is a window name, justification is either
  1089.              left,  center,  or  right,  and  num  and  denom are
  1090.              numbers specifying a ratio giving the relative posi-
  1091.              tion  about  which  the  titlebar is justified.  The
  1092.              ratio is measured from left to right if the  numera-
  1093.              tor  is  positive, and right to left if negative.  A
  1094.              denominator of 0 indicates that the numerator should
  1095.              be  measured  in pixels.  For convenience, the ratio
  1096.              0/0 is the same as  1/2  for  center  and  -1/1  for
  1097.              right.  For example:
  1098.  
  1099.                   SqueezeTitle
  1100.                   {
  1101.                        "XTerm"   left      0    0
  1102.                        "xterm1"  left      1    3
  1103.                        "xterm2"  left      2    3
  1104.                        "oclock"  center         0    0
  1105.                        "emacs"   right          0    0
  1106.                   }
  1107.  
  1108.              The DontSqueezeTitle list can be used  to  turn  off
  1109.              squeezing on certain titles.
  1110.  
  1111.      StartIconified [{ win-list }]
  1112.              This variable indicates that client  windows  should
  1113.              initially be left as icons until explicitly deiconi-
  1114.              fied by the  user.   If  the  optional  win-list  is
  1115.              given,  only  those  windows will be started iconic.
  1116.  
  1117.  
  1118.  
  1119. X Version 11         Last change: Release 6                    17
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. TWM(1)                   USER COMMANDS                     TWM(1)
  1127.  
  1128.  
  1129.  
  1130.              This is useful for programs that do not  support  an
  1131.              -iconic command line option or resource.
  1132.  
  1133.      TitleBackground string [{ win-list }]
  1134.              This variable specifies the background color used in
  1135.              titlebars,  and  may  only  be specified inside of a
  1136.              Color, Grayscale or Monochrome list.   The  optional
  1137.              win-list  is  a  list  of window names and colors so
  1138.              that  per-window  colors  may  be  specified.    The
  1139.              default is "white".
  1140.  
  1141.      TitleButtonBorderWidth pixels
  1142.              This variable specifies the width in pixels  of  the
  1143.              border  surrounding titlebuttons.  This is typically
  1144.              set to 0 to allow titlebuttons to take  up  as  much
  1145.              space  as  possible  and  to not have a border.  The
  1146.              default is 1.
  1147.  
  1148.      TitleFont string
  1149.              This variable specifies the  font  to  be  used  for
  1150.              displaying  window  names in titlebars.  The default
  1151.              is "variable".
  1152.  
  1153.      TitleForeground string [{ win-list }]
  1154.              This variable specifies the foreground color used in
  1155.              titlebars,  and  may  only  be specified inside of a
  1156.              Color, Grayscale or Monochrome list.   The  optional
  1157.              win-list  is  a  list  of window names and colors so
  1158.              that  per-window  colors  may  be  specified.    The
  1159.              default is "black".
  1160.  
  1161.      TitlePadding pixels
  1162.              This variable specifies  the  distance  between  the
  1163.              various  buttons,  text,  and highlight areas in the
  1164.              titlebar.  The default is 8 pixels.
  1165.  
  1166.      UnknownIcon string
  1167.              This variable specifies the  filename  of  a  bitmap
  1168.              file  to  be  used as the default icon.  This bitmap
  1169.              will be used as the icon of all clients which do not
  1170.              provide  an  icon  bitmap  and are not listed in the
  1171.              Icons list.
  1172.  
  1173.      UsePPosition string
  1174.              This variable specifies whether or  not  twm  should
  1175.              honor program-requested locations (given by the PPo-
  1176.              sition flag in the WM_NORMAL_HINTS property) in  the
  1177.              absence  of a user-specified position.  The argument
  1178.              string may have one of  three  values:   "off"  (the
  1179.              default)  indicating  that  twm  should  ignore  the
  1180.              program-supplied position, "on" indicating that  the
  1181.              position  should  be used, and "non-zero" indicating
  1182.  
  1183.  
  1184.  
  1185. X Version 11         Last change: Release 6                    18
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. TWM(1)                   USER COMMANDS                     TWM(1)
  1193.  
  1194.  
  1195.  
  1196.              that the position should used if it  is  other  than
  1197.              (0,0).   The  latter  option is for working around a
  1198.              bug in older toolkits.
  1199.  
  1200.      WarpCursor [{ win-list }]
  1201.              This variable indicates that the pointer  should  be
  1202.              warped  into  windows when they are deiconified.  If
  1203.              the optional win-list is  given,  the  pointer  will
  1204.              only be warped when those windows are deiconified.
  1205.  
  1206.      WindowRing { win-list }
  1207.              This variable specifies  a  list  of  windows  along
  1208.              which the f.warpring function cycles.
  1209.  
  1210.      WarpUnmapped
  1211.              This variable indicates that the  f.warpto  function
  1212.              should    deiconify   any   iconified   windows   it
  1213.              encounters.  This is typically used to  make  a  key
  1214.              binding  that  will pop a particular window (such as
  1215.              xmh), no matter where it is.   The  default  is  for
  1216.              f.warpto to ignore iconified windows.
  1217.  
  1218.      XorValue number
  1219.              This variable specifies the value to use when  draw-
  1220.              ing  window  outlines for moving and resizing.  This
  1221.              should be set to a  value  that  will  result  in  a
  1222.              variety    of   of   distinguishable   colors   when
  1223.              exclusive-or'ed with the contents of the user's typ-
  1224.              ical screen.  Setting this variable to 1 often gives
  1225.              nice results  if  adjacent  colors  in  the  default
  1226.              colormap are distinct.  By default, twm will attempt
  1227.              to cause temporary lines to appear at  the  opposite
  1228.              end of the colormap from the graphics.
  1229.  
  1230.      Zoom [ count ]
  1231.              This variable  indicates  that  outlines  suggesting
  1232.              movement of a window to and from its iconified state
  1233.              should be displayed whenever a window  is  iconified
  1234.              or  deiconified.  The optional count argument speci-
  1235.              fies the  number  of  outlines  to  be  drawn.   The
  1236.              default count is 8.
  1237.  
  1238.      The following variables must be set  after  the  fonts  have
  1239.      been  assigned, so it is usually best to put them at the end
  1240.      of the variables or beginning of the bindings sections:
  1241.  
  1242.      DefaultFunction function
  1243.              This variable specifies the function to be  executed
  1244.              when  a key or button event is received for which no
  1245.              binding is provided.  This  is  typically  bound  to
  1246.              f.nop,  f.beep,  or  a menu containing window opera-
  1247.              tions.
  1248.  
  1249.  
  1250.  
  1251. X Version 11         Last change: Release 6                    19
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. TWM(1)                   USER COMMANDS                     TWM(1)
  1259.  
  1260.  
  1261.  
  1262.      WindowFunction function
  1263.              This variable specifies the function to execute when
  1264.              a  window  is selected from the TwmWindows menu.  If
  1265.              this variable is not set, the window will be deicon-
  1266.              ified and raised.
  1267.  
  1268. BINDINGS
  1269.      After the desired variables have been set, functions may  be
  1270.      attached   titlebuttons   and   key   and  pointer  buttons.
  1271.      Titlebuttons may be added from the left or  right  side  and
  1272.      appear  in  the titlebar from left-to-right according to the
  1273.      order in which they are specified.  Key and  pointer  button
  1274.      bindings may be given in any order.
  1275.  
  1276.      Titlebuttons specifications must include  the  name  of  the
  1277.      pixmap  to  use  in  the  button  box and the function to be
  1278.      invoked when a pointer button is pressed within them:
  1279.  
  1280.           LeftTitleButton "bitmapname"  = function
  1281.  
  1282.      or
  1283.  
  1284.           RightTitleButton "bitmapname" = function
  1285.  
  1286.      The bitmapname may refer to one  of  the   built-in  bitmaps
  1287.      (which are scaled to match TitleFont) by using the appropri-
  1288.      ate colon-prefixed name described above.
  1289.  
  1290.      Key and pointer button specifications must give  the  modif-
  1291.      iers  that  must  be pressed, over which parts of the screen
  1292.      the pointer must be, and what function  is  to  be  invoked.
  1293.      Keys  are given as strings containing the appropriate keysym
  1294.      name; buttons are given as the keywords Button1-Button5:
  1295.  
  1296.           "FP1"          = modlist : context : function
  1297.           Button1   = modlist : context : function
  1298.  
  1299.      The modlist is any combination of the modifier names  shift,
  1300.      control,  lock, meta, mod1, mod2, mod3, mod4, or mod5 (which
  1301.      may be abbreviated as s, c,  l,  m,  m1,  m2,  m3,  m4,  m5,
  1302.      respectively)  separated  by a vertical bar (|).  Similarly,
  1303.      the context is any combination of window, title, icon, root,
  1304.      frame, iconmgr, their first letters (iconmgr abbreviation is
  1305.      m), or all, separated by a vertical bar.   The  function  is
  1306.      any  of  the  f. keywords described below.  For example, the
  1307.      default startup file contains the following bindings:
  1308.  
  1309.           Button1   =    : root         : f.menu "TwmWindows"
  1310.           Button1   = m  : window | icon     : f.function "move-or-lower"
  1311.           Button2   = m  : window | icon     : f.iconify
  1312.           Button3   = m  : window | icon     : f.function "move-or-raise"
  1313.           Button1   =    : title        : f.function "move-or-raise"
  1314.  
  1315.  
  1316.  
  1317. X Version 11         Last change: Release 6                    20
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. TWM(1)                   USER COMMANDS                     TWM(1)
  1325.  
  1326.  
  1327.  
  1328.           Button2   =    : title        : f.raiselower
  1329.           Button1   =    : icon         : f.function "move-or-iconify"
  1330.           Button2   =    : icon         : f.iconify
  1331.           Button1   =    : iconmgr : f.iconify
  1332.           Button2   =    : iconmgr : f.iconify
  1333.  
  1334.      A user who wanted to be able to manipulate windows from  the
  1335.      keyboard could use the following bindings:
  1336.  
  1337.           "F1" =    : all          : f.iconify
  1338.           "F2" =    : all          : f.raiselower
  1339.           "F3" =    : all          : f.warpring "next"
  1340.           "F4" =    : all          : f.warpto "xmh"
  1341.           "F5" =    : all          : f.warpto "emacs"
  1342.           "F6" =    : all          : f.colormap "next"
  1343.           "F7" =    : all          : f.colormap "default"
  1344.           "F20"     =    : all          : f.warptoscreen "next"
  1345.           "Left"    = m  : all          : f.backiconmgr
  1346.           "Right"   = m | s   : all          : f.forwiconmgr
  1347.           "Up" = m  : all          : f.upiconmgr
  1348.           "Down"    = m | s   : all          : f.downiconmgr
  1349.  
  1350.      Twm provides many more window manipulation  primitives  than
  1351.      can  be  conveniently  stored in a titlebar, menu, or set of
  1352.      key bindings.  Although a small set of defaults are supplied
  1353.      (unless  the  NoDefaults is specified), most users will want
  1354.      to have their most common operations bound to key and button
  1355.      strokes.   To do this, twm associates names with each of the
  1356.      primitives and provides user-defined functions for  building
  1357.      higher  level primitives and menus for interactively select-
  1358.      ing among groups of functions.
  1359.  
  1360.      User-defined functions contain the name by  which  they  are
  1361.      referenced  in calls to f.function and a list of other func-
  1362.      tions to execute.  For example:
  1363.  
  1364.           Function "move-or-lower" { f.move f.deltastop f.lower }
  1365.           Function "move-or-raise" { f.move f.deltastop f.raise }
  1366.           Function "move-or-iconify"    { f.move f.deltastop f.iconify }
  1367.           Function "restore-colormap"   { f.colormap "default" f.lower }
  1368.  
  1369.      The function name must be used in f.function exactly  as  it
  1370.      appears in the function specification.
  1371.  
  1372.      In the descriptions  below,  if  the  function  is  said  to
  1373.      operate  on  the selected window, but is invoked from a root
  1374.      menu, the cursor will be changed to the  Select  cursor  and
  1375.      the next window to receive a button press will be chosen:
  1376.  
  1377.      ! string
  1378.              This is an abbreviation for f.exec string.
  1379.  
  1380.  
  1381.  
  1382.  
  1383. X Version 11         Last change: Release 6                    21
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390. TWM(1)                   USER COMMANDS                     TWM(1)
  1391.  
  1392.  
  1393.  
  1394.      f.autoraise
  1395.              This function toggles whether or  not  the  selected
  1396.              window  is  raised  whenever entered by the pointer.
  1397.              See the description of the variable AutoRaise.
  1398.  
  1399.      f.backiconmgr
  1400.              This function warps  the  pointer  to  the  previous
  1401.              column in the current icon manager, wrapping back to
  1402.              the previous row if necessary.
  1403.  
  1404.      f.beep  This function sounds the keyboard bell.
  1405.  
  1406.      f.bottomzoom
  1407.              This function is similar to the f.fullzoom function,
  1408.              but  resizes the window to fill only the bottom half
  1409.              of the screen.
  1410.  
  1411.      f.circledown
  1412.              This  function  lowers  the  top-most  window   that
  1413.              occludes another window.
  1414.  
  1415.      f.circleup
  1416.              This function raises the bottom-most window that  is
  1417.              occluded by another window.
  1418.  
  1419.      f.colormap string
  1420.              This function rotates the colormaps  (obtained  from
  1421.              the WM_COLORMAP_WINDOWS property on the window) that
  1422.              twm will display when the pointer is in this window.
  1423.              The  argument  string  may have one of the following
  1424.              values: "next", "prev", and "default".  It should be
  1425.              noted  here  that in general, the installed colormap
  1426.              is determined by keyboard focus.  A  pointer  driven
  1427.              keyboard  focus will install a private colormap upon
  1428.              entry of the window owning the colormap.  Using  the
  1429.              click  to  type model, private colormaps will not be
  1430.              installed until the user presses a mouse  button  on
  1431.              the target window.
  1432.  
  1433.      f.deiconify
  1434.              This function deiconifies the selected  window.   If
  1435.              the  window is not an icon, this function does noth-
  1436.              ing.
  1437.  
  1438.      f.delete
  1439.              This function sends the WM_DELETE_WINDOW message  to
  1440.              the  selected  window  if the client application has
  1441.              requested it through the  WM_PROTOCOLS  window  pro-
  1442.              perty.   The  application  is supposed to respond to
  1443.              the message by removing the  indicated  window.   If
  1444.              the  window  has not requested WM_DELETE_WINDOW mes-
  1445.              sages, the keyboard bell  will  be  rung  indicating
  1446.  
  1447.  
  1448.  
  1449. X Version 11         Last change: Release 6                    22
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456. TWM(1)                   USER COMMANDS                     TWM(1)
  1457.  
  1458.  
  1459.  
  1460.              that  the  user should choose an alternative method.
  1461.              Note this is very  different  from  f.destroy.   The
  1462.              intent  here  is  to  delete  a  single window,  not
  1463.              necessarily the entire application.
  1464.  
  1465.      f.deltastop
  1466.              This function allows a user-defined function  to  be
  1467.              aborted  if  the  pointer  has  been moved more than
  1468.              MoveDelta pixels.  See the example definition  given
  1469.              for Function "move-or-raise" at the beginning of the
  1470.              section.
  1471.  
  1472.      f.destroy
  1473.              This function instructs the X server  to  close  the
  1474.              display  connection  of  the client that created the
  1475.              selected window.  This should only be used as a last
  1476.              resort  for shutting down runaway clients.  See also
  1477.              f.delete.
  1478.  
  1479.      f.downiconmgr
  1480.              This function warps the pointer to the next  row  in
  1481.              the  current  icon manger, wrapping to the beginning
  1482.              of the next column if necessary.
  1483.  
  1484.      f.exec string
  1485.              This function passes the argument string to  /bin/sh
  1486.              for  execution.   In  multiscreen  mode,  if  string
  1487.              starts a new X client without giving a display argu-
  1488.              ment,  the  client  will  appear  on the screen from
  1489.              which this function was invoked.
  1490.  
  1491.      f.focus This function toggles  the  keyboard  focus  of  the
  1492.              server  to  the  selected window, changing the focus
  1493.              rule  from  pointer-driven  if  necessary.   If  the
  1494.              selected  window  already was focused, this function
  1495.              executes an f.unfocus.
  1496.  
  1497.      f.forcemove
  1498.              This function is like f.move except that it  ignores
  1499.              the DontMoveOff variable.
  1500.  
  1501.      f.forwiconmgr
  1502.              This function warps the pointer to the  next  column
  1503.              in  the current icon manager, wrapping to the begin-
  1504.              ning of the next row if necessary.
  1505.  
  1506.      f.fullzoom
  1507.              This function resizes the  selected  window  to  the
  1508.              full size of the display or else restores the origi-
  1509.              nal size if the window was already zoomed.
  1510.  
  1511.      f.function string
  1512.  
  1513.  
  1514.  
  1515. X Version 11         Last change: Release 6                    23
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522. TWM(1)                   USER COMMANDS                     TWM(1)
  1523.  
  1524.  
  1525.  
  1526.              This function  executes  the  user-defined  function
  1527.              whose name is specified by the argument string.
  1528.  
  1529.      f.hbzoom
  1530.              This function is a synonym for f.bottomzoom.
  1531.  
  1532.      f.hideiconmgr
  1533.              This function unmaps the current icon manager.
  1534.  
  1535.      f.horizoom
  1536.              This variable is  similar  to  the  f.zoom  function
  1537.              except  that  the  selected window is resized to the
  1538.              full width of the display.
  1539.  
  1540.      f.htzoom
  1541.              This function is a synonym for f.topzoom.
  1542.  
  1543.      f.hzoom This function is a synonym for f.horizoom.
  1544.  
  1545.      f.iconify
  1546.              This function iconifies or deiconifies the  selected
  1547.              window or icon, respectively.
  1548.  
  1549.      f.identify
  1550.              This function displays a summary  of  the  name  and
  1551.              geometry of the selected window.  If the server sup-
  1552.              ports the SYNC extension, the priority of the client
  1553.              owning  the  window is also displayed.  Clicking the
  1554.              pointer or pressing a key in the window will dismiss
  1555.              it.
  1556.  
  1557.      f.lefticonmgr
  1558.              This function similar to f.backiconmgr  except  that
  1559.              wrapping does not change rows.
  1560.  
  1561.      f.leftzoom
  1562.              This variable is similar to the  f.bottomzoom  func-
  1563.              tion  but causes the selected window is only resized
  1564.              to the left half of the display.
  1565.  
  1566.      f.lower This function lowers the selected window.
  1567.  
  1568.      f.menu string
  1569.              This function invokes  the  menu  specified  by  the
  1570.              argument  string.   Cascaded  menus  may be built by
  1571.              nesting calls to f.menu.
  1572.  
  1573.      f.move  This function drags an outline of the selected  win-
  1574.              dow (or the window itself if the OpaqueMove variable
  1575.              is  set)  until  the  invoking  pointer  button   is
  1576.              released.  Double clicking within the number of mil-
  1577.              liseconds given  by  ConstrainedMoveTime  warps  the
  1578.  
  1579.  
  1580.  
  1581. X Version 11         Last change: Release 6                    24
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588. TWM(1)                   USER COMMANDS                     TWM(1)
  1589.  
  1590.  
  1591.  
  1592.              pointer  to  the center of the window and constrains
  1593.              the move to be either horizontal or vertical depend-
  1594.              ing on which grid line is crossed.  To abort a move,
  1595.              press another button before releasing the first but-
  1596.              ton.
  1597.  
  1598.      f.nexticonmgr
  1599.              This function warps the pointer  to  the  next  icon
  1600.              manager containing any windows on the current or any
  1601.              succeeding screen.
  1602.  
  1603.      f.nop   This function does nothing  and  is  typically  used
  1604.              with the DefaultFunction or WindowFunction variables
  1605.              or to introduce blank lines in menus.
  1606.  
  1607.      f.previconmgr
  1608.              This function warps the pointer to the previous icon
  1609.              manager  containing  any  windows  on the current or
  1610.              preceding screens.
  1611.  
  1612.      f.priority string
  1613.              This function sets the priority of the client owning
  1614.              the  selected  window  to  the  numeric value of the
  1615.              argument string, which should be a signed integer in
  1616.              double  quotes  (e.g. "999" ).  This function has an
  1617.              effect only if the server supports the  SYNC  exten-
  1618.              sion.
  1619.  
  1620.      f.quit  This function causes twm  to  restore  the  window's
  1621.              borders  and  exit.   If  twm  is  the  first client
  1622.              invoked from xdm,  this  will  result  in  a  server
  1623.              reset.
  1624.  
  1625.      f.raise This function raises the selected window.
  1626.  
  1627.      f.raiselower
  1628.              This function raises the selected window to the  top
  1629.              of  the stacking order if it is occluded by any win-
  1630.              dows, otherwise the window will be lowered.
  1631.  
  1632.      f.refresh
  1633.              This function causes all windows to be refreshed.
  1634.  
  1635.      f.resize
  1636.              This function displays an outline  of  the  selected
  1637.              window.   Crossing  a  border  (or setting AutoRela-
  1638.              tiveResize) will  cause  the  outline  to  begin  to
  1639.              rubber  band  until the invoking button is released.
  1640.              To abort  a  resize,  press  another  button  before
  1641.              releasing the first button.
  1642.  
  1643.      f.restart
  1644.  
  1645.  
  1646.  
  1647. X Version 11         Last change: Release 6                    25
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654. TWM(1)                   USER COMMANDS                     TWM(1)
  1655.  
  1656.  
  1657.  
  1658.              This function kills and restarts twm.
  1659.  
  1660.      f.righticonmgr
  1661.              This function is  similar  to  f.nexticonmgr  except
  1662.              that wrapping does not change rows.
  1663.  
  1664.      f.rightzoom
  1665.              This variable is similar to the  f.bottomzoom  func-
  1666.              tion except that the selected window is only resized
  1667.              to the right half of the display.
  1668.  
  1669.      f.saveyourself
  1670.              This function sends a WM_SAVEYOURSELF message to the
  1671.              selected  window  if it has requested the message in
  1672.              its  WM_PROTOCOLS  window  property.   Clients  that
  1673.              accept  this  message are supposed to checkpoint all
  1674.              state associated with  the  window  and  update  the
  1675.              WM_COMMAND  property  as specified in the ICCCM.  If
  1676.              the selected window has not selected for  this  mes-
  1677.              sage, the keyboard bell will be rung.
  1678.  
  1679.      f.showiconmgr
  1680.              This function maps the current icon manager.
  1681.  
  1682.      f.sorticonmgr
  1683.              This function sorts the entries in the current  icon
  1684.              manager  alphabetically.  See the variable SortIcon-
  1685.              Manager.
  1686.  
  1687.      f.title This function provides a centered, unselectable item
  1688.              in  a menu definition.  It should not be used in any
  1689.              other context.
  1690.  
  1691.      f.topzoom
  1692.              This variable is similar to the  f.bottomzoom  func-
  1693.              tion except that the selected window is only resized
  1694.              to the top half of the display.
  1695.  
  1696.      f.unfocus
  1697.              This function resets  the  focus  back  to  pointer-
  1698.              driven.   This  should be used when a focused window
  1699.              is no longer desired.
  1700.  
  1701.      f.upiconmgr
  1702.              This function warps the pointer to the previous  row
  1703.              in  the  current  icon manager, wrapping to the last
  1704.              row in the same column if necessary.
  1705.  
  1706.      f.vlzoom
  1707.              This function is a synonym for f.leftzoom.
  1708.  
  1709.      f.vrzoom
  1710.  
  1711.  
  1712.  
  1713. X Version 11         Last change: Release 6                    26
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720. TWM(1)                   USER COMMANDS                     TWM(1)
  1721.  
  1722.  
  1723.  
  1724.              This function is a synonym for f.rightzoom.
  1725.  
  1726.      f.warpring string
  1727.              This function warps the pointer to the next or  pre-
  1728.              vious  window  (as indicated by the argument string,
  1729.              which may be "next" or "prev") specified in the Win-
  1730.              dowRing variable.
  1731.  
  1732.      f.warpto string
  1733.              This function warps the pointer to the window  which
  1734.              has  a  name  or  class that matches string.  If the
  1735.              window is iconified, it will be deiconified  if  the
  1736.              variable WarpUnmapped is set or else ignored.
  1737.  
  1738.      f.warptoiconmgr string
  1739.              This function warps the pointer to the icon  manager
  1740.              entry  associated  with  the  window  containing the
  1741.              pointer in the icon manager specified by  the  argu-
  1742.              ment  string.   If  string  is  empty (i.e. ""), the
  1743.              current icon manager is chosen.
  1744.  
  1745.      f.warptoscreen string
  1746.              This function warps the pointer to the screen speci-
  1747.              fied by the argument string.  String may be a number
  1748.              (e.g. "0" or "1"), the word "next"  (indicating  the
  1749.              current  screen  plus 1, skipping over any unmanaged
  1750.              screens), the word "back"  (indicating  the  current
  1751.              screen   minus   1,   skipping  over  any  unmanaged
  1752.              screens), or the word "prev"  (indicating  the  last
  1753.              screen visited.
  1754.  
  1755.      f.winrefresh
  1756.              This function is similar to the  f.refresh  function
  1757.              except that only the selected window is refreshed.
  1758.  
  1759.      f.zoom  This function is similar to the f.fullzoom function,
  1760.              except that the only the height of the selected win-
  1761.              dow is changed.
  1762.  
  1763. MENUS
  1764.      Functions may be grouped and  interactively  selected  using
  1765.      pop-up  (when  bound to a pointer button) or pull-down (when
  1766.      associated with a titlebutton) menus.  Each menu  specifica-
  1767.      tion contains the name of the menu as it will be referred to
  1768.      by  f.menu,  optional  default  foreground  and   background
  1769.      colors, the list of item names and the functions they should
  1770.      invoke, and optional foreground and  background  colors  for
  1771.      individual items:
  1772.  
  1773.           Menu "menuname" [ ("deffore":"defback") ]
  1774.           {
  1775.                string1   [ ("fore1":"backn")]     function1
  1776.  
  1777.  
  1778.  
  1779. X Version 11         Last change: Release 6                    27
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786. TWM(1)                   USER COMMANDS                     TWM(1)
  1787.  
  1788.  
  1789.  
  1790.                string2   [ ("fore2":"backn")]     function2
  1791.                     .
  1792.                     .
  1793.                     .
  1794.                stringN   [ ("foreN":"backN")]     functionN
  1795.           }
  1796.  
  1797.  
  1798.      The menuname is case-sensitive.  The  optional  deffore  and
  1799.      defback  arguments  specify  the  foreground  and background
  1800.      colors used on a color display to  highlight  menu  entries.
  1801.      The string portion of each menu entry will be the text which
  1802.      will appear in the menu.  The optional fore and  back  argu-
  1803.      ments  specify  the  foreground and background colors of the
  1804.      menu entry when the pointer is  not  in  the  entry.   These
  1805.      colors will only be used on a color display.  The default is
  1806.      to use the colors specified by the MenuForeground and  Menu-
  1807.      Background  variables.   The  function  portion  of the menu
  1808.      entry is one of the functions,  including  any  user-defined
  1809.      functions, or additional menus.
  1810.  
  1811.      There is a special menu named TwmWindows which contains  the
  1812.      names  of  all  of  the  client  and  twm-supplied  windows.
  1813.      Selecting an entry will cause the WindowFunction to be  exe-
  1814.      cuted  on  that  window.  If WindowFunction hasn't been set,
  1815.      the window will be deiconified and raised.
  1816.  
  1817. ICONS
  1818.      Twm supports several different ways of  manipulating  iconi-
  1819.      fied  windows.  The common pixmap-and-text style may be laid
  1820.      out by hand or automatically arranged as  described  by  the
  1821.      IconRegion  variable.   In  addition,  a  terse grid of icon
  1822.      names, called an icon manager, provides a more efficient use
  1823.      of  screen  space  as  well as the ability to navigate among
  1824.      windows from the keyboard.
  1825.  
  1826.      An icon manager is a window that contains names of  selected
  1827.      or all windows currently on the display.  In addition to the
  1828.      window name, a small button using the default iconify symbol
  1829.      will be displayed to the left of the name when the window is
  1830.      iconified.  By default, clicking on an  entry  in  the  icon
  1831.      manager  performs f.iconify.  To change the actions taken in
  1832.      the icon manager, use the the iconmgr context when  specify-
  1833.      ing button and keyboard bindings.
  1834.  
  1835.      Moving the pointer into the icon manager also  directs  key-
  1836.      board  focus  to  the  indicated  window  (setting the focus
  1837.      explicitly or else sending synthetic events NoTitleFocus  is
  1838.      set).   Using  the f.upiconmgr, f.downiconmgr f.lefticonmgr,
  1839.      and f.righticonmgr functions, the input focus can be changed
  1840.      between windows directly from the keyboard.
  1841.  
  1842.  
  1843.  
  1844.  
  1845. X Version 11         Last change: Release 6                    28
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852. TWM(1)                   USER COMMANDS                     TWM(1)
  1853.  
  1854.  
  1855.  
  1856. BUGS
  1857.      The resource manager should have been used instead of all of
  1858.      the window lists.
  1859.  
  1860.      The IconRegion variable should take a list.
  1861.  
  1862.      Double clicking very fast to get the constrained move  func-
  1863.      tion  will  sometimes  cause the window to move, even though
  1864.      the pointer is not moved.
  1865.  
  1866.      If IconifyByUnmapping is on and windows are listed in  Icon-
  1867.      ManagerDontShow  but not in DontIconifyByUnmapping, they may
  1868.      be lost if they are iconified  and  no  bindings  to  f.menu
  1869.      "TwmWindows" or f.warpto are setup.
  1870.  
  1871. FILES
  1872.       $HOME/.twmrc.<screen number>
  1873.       $HOME/.twmrc
  1874.       <XRoot>/lib/X11/twm/system.twmrc
  1875.  
  1876. ENVIRONMENT VARIABLES
  1877.      DISPLAY This variable is used to determine which X server to
  1878.              use.   It is also set during f.exec so that programs
  1879.              come up on the proper screen.
  1880.  
  1881.      HOME    This variable is used as the prefix for  files  that
  1882.              begin  with a tilde and for locating the twm startup
  1883.              file.
  1884.  
  1885. SEE ALSO
  1886.      X(1), Xserver(1), xdm(1), xrdb(1)
  1887.  
  1888. AUTHORS
  1889.      Tom LaStrange, Solbourne Computer; Jim Fulton, MIT X Consor-
  1890.      tium;  Steve Pitschke, Stardent Computer; Keith Packard, MIT
  1891.      X Consortium; Dave Sternlicht, MIT X Consortium; Dave Payne,
  1892.      Apple Computer.
  1893.  
  1894.  
  1895.  
  1896.  
  1897.  
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911. X Version 11         Last change: Release 6                    29
  1912.  
  1913.  
  1914.  
  1915.